package com.zhoug.player.vlcplayer.note;

/**
 * @author: zhoug
 * @since: 2025-08-11
 */
public class Note {
    public static class Event  {
        /**
         * 当播放的媒体发生变化时触发。例如，播放列表中的下一个媒体开始播放。
         */
        public static final int MediaChanged = 0x100;
        /**
         * 当媒体开始打开（准备播放）但还未开始播放时触发
         */
        public static final int Opening = 0x102;
        /**
         * 当播放器正在缓冲数据时触发。通常发生在网络流媒体播放时。
         */
        public static final int Buffering = 0x103;
        /**
         * 当媒体开始播放（或从暂停状态恢复播放）时触发。
         */
        public static final int Playing = 0x104;
        /**
         * 当媒体被暂停时触发。
         */
        public static final int Paused = 0x105;
        /**
         * 当媒体停止播放时触发（例如，调用停止方法后）。
         */
        public static final int Stopped = 0x106;
        /**
         * 当媒体播放到达末尾时触发。
         */
        public static final int EndReached = 0x109;
        /**
         * 当播放过程中遇到错误时触发。
         */
        public static final int EncounteredError = 0x10a;
        /**
         * 当媒体的播放时间（当前位置）改变时触发。这通常发生在播放过程中或者用户拖动进度条后。
         */
        public static final int TimeChanged = 0x10b;
        /**
         * 当媒体的播放位置（百分比）改变时触发。与`TimeChanged`类似，但表示的是相对位置。
         */
        public static final int PositionChanged = 0x10c;
        /**
         * 当媒体的可跳转状态改变时触发。例如，某些直播流开始可能不允许跳转，但之后允许跳转（比如回放）。
         */
        public static final int SeekableChanged = 0x10d;
        /**
         * 当媒体的可暂停状态改变时触发。例如，某些直播流可能不允许暂停。
         */
        public static final int PausableChanged = 0x10e;
        /**
         * 当媒体的总长度改变时触发。这在播放实时流时可能会发生，因为总时长在不断增加。
         */
        public static final int LengthChanged = 0x111;
        /**
         * 当视频输出（video output）改变时触发。例如，视频轨道变化或者视频输出设备改变。
         */
        public static final int Vout = 0x112;
        /**
         * 当新的基本流（Elementary Stream）被添加时触发。基本流是指媒体中的音频、视频或字幕轨道。
         * 例如，一个多音轨的视频在播放过程中动态添加了新的音轨。
         */
        public static final int ESAdded = 0x114;
        /**
         * 当基本流被移除时触发。
         */
        public static final int ESDeleted = 0x115;
        /**
         * 当某个基本流被选中（例如，用户切换了音轨或字幕）时触发。
         */
        public static final int ESSelected = 0x116;
        /**
         * 当录制状态改变时触发。例如，开始录制或停止录制。
         */
        public static final int RecordChanged = 0x11e;
    }


}

